package com.sg.dto.integration.app;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Objects;

/**
 * @desc PlanningDto
 * @使用场景
 */
@Data
public class PlanningDto extends BaseDto implements Serializable {

    /**
     * 规划简称:
     */
    @ApiModelProperty("规划简称")
    private String planningShortName;

    /**
     * 规划编号:
     */
    @ApiModelProperty("规划编号")
    private String planningNumber;
    /**
     * 规划资料ID
     */
    @ApiModelProperty("规划资料ID")
    private String planningId;

    /**
     * 虚拟组织下部门ID
     */
    @ApiModelProperty("虚拟组织下部门ID")
    private String deptId;

    /**
     * 组织内部门身份名称
     */
    @ApiModelProperty("组织内部门身份名称")
    private String virtualOrgDeptStatus;

    /**
     * 关联目标分类ID
     */
    @ApiModelProperty("关联目标分类ID")
    private String targetCategoryId;

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        if (!super.equals(o)) return false;
        PlanningDto that = (PlanningDto) o;
        return planningShortName == that.planningShortName && planningNumber == that.planningNumber && planningId == that.planningId && deptId == that.deptId && virtualOrgDeptStatus == that.virtualOrgDeptStatus && targetCategoryId == that.targetCategoryId;
    }

    @Override
    public int hashCode() {
        return Objects.hash(super.hashCode(), planningShortName, planningNumber, planningId, deptId, virtualOrgDeptStatus, targetCategoryId);
    }

}
